
#include "iostream"
#include "vector"
#include "unordered_map"
#include "unordered_set"
#include "algorithm"
#include "string"
#include "list"
#include "string.h"
#include "math.h"

class OneLoop {
public:
//    std::vector<int> sta1[3];
//    void print_state(){
//        for(int i=0;i<3;i++){
//            for(auto s:sta1[i]){
//                printf("%d ",s);
//            }
//            printf("\n");
//        }
//        printf("----------------\n");
//    }
    int step=0;
int tar_step=0;
    int from=-1;
    int to=-1;
    void hanoo(int move_cnt,int a,int b,int c){
        if(step==tar_step){
            return;
        }
        if(move_cnt==1){
//            sta1[c].push_back(sta1[a].back());
//            sta1[a].pop_back();
//            print_state();
            step++;
            if(step==tar_step){
                from=a;
                to=c;
                return;
            }
        }else{
            //n-1已到中间
            hanoo(move_cnt-1,a,c,b);
            hanoo(1,a,b,c);
            hanoo(move_cnt-1,b,a,c);
        }
    }

    OneLoop(int a,int b) {
//        for(int i=a;i>0;i--){
//            sta1[0].push_back(i);
//        }
tar_step=b;
//        print_state();
        hanoo(a,0,1,2);
        if(from!=-1){
            printf("%c--%c\n",from+'A',to+'A');
        }else{
            printf("none\n");
        }
    }
};

class Solution {
public:
    void run() {

        bool first = true;
        int a, b;
        std::string s;
        while (
                std::cin >> a>>b
//                std::getline(std::cin,s)\

                ) {
            OneLoop loop(a,b);
        }
    }
};


int main() {


//    for(int i=3;i<100000000;i++){
//        if(is_chun_cu(i)){
//            printf("%d,",i);
//        }
//    }

//    bool cur_num= true;
    Solution().run();
    return 0;
}

